/*
 * Copyright 2020 HPB Foundation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.hpb.bc.entity;

import java.util.Date;

public class NodeAddressSubscribeRecord extends BaseEntity {
    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column node_address_subscribe_record.address
     *
     * @mbg.generated
     */
    private String address;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column node_address_subscribe_record.email
     *
     * @mbg.generated
     */
    private String email;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column node_address_subscribe_record.create_timestamp
     *
     * @mbg.generated
     */
    private Date createTimestamp;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column node_address_subscribe_record.update_timestamp
     *
     * @mbg.generated
     */
    private Date updateTimestamp;

    /**
     *
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column node_address_subscribe_record.subscribe_type
     *
     * @mbg.generated
     */
    private String subscribeType;

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column node_address_subscribe_record.address
     *
     * @return the value of node_address_subscribe_record.address
     *
     * @mbg.generated
     */
    public String getAddress() {
        return address;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column node_address_subscribe_record.address
     *
     * @param address the value for node_address_subscribe_record.address
     *
     * @mbg.generated
     */
    public void setAddress(String address) {
        this.address = address == null ? null : address.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column node_address_subscribe_record.email
     *
     * @return the value of node_address_subscribe_record.email
     *
     * @mbg.generated
     */
    public String getEmail() {
        return email;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column node_address_subscribe_record.email
     *
     * @param email the value for node_address_subscribe_record.email
     *
     * @mbg.generated
     */
    public void setEmail(String email) {
        this.email = email == null ? null : email.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column node_address_subscribe_record.create_timestamp
     *
     * @return the value of node_address_subscribe_record.create_timestamp
     *
     * @mbg.generated
     */
    public Date getCreateTimestamp() {
        return createTimestamp;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column node_address_subscribe_record.create_timestamp
     *
     * @param createTimestamp the value for node_address_subscribe_record.create_timestamp
     *
     * @mbg.generated
     */
    public void setCreateTimestamp(Date createTimestamp) {
        this.createTimestamp = createTimestamp;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column node_address_subscribe_record.update_timestamp
     *
     * @return the value of node_address_subscribe_record.update_timestamp
     *
     * @mbg.generated
     */
    public Date getUpdateTimestamp() {
        return updateTimestamp;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column node_address_subscribe_record.update_timestamp
     *
     * @param updateTimestamp the value for node_address_subscribe_record.update_timestamp
     *
     * @mbg.generated
     */
    public void setUpdateTimestamp(Date updateTimestamp) {
        this.updateTimestamp = updateTimestamp;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column node_address_subscribe_record.subscribe_type
     *
     * @return the value of node_address_subscribe_record.subscribe_type
     *
     * @mbg.generated
     */
    public String getSubscribeType() {
        return subscribeType;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column node_address_subscribe_record.subscribe_type
     *
     * @param subscribeType the value for node_address_subscribe_record.subscribe_type
     *
     * @mbg.generated
     */
    public void setSubscribeType(String subscribeType) {
        this.subscribeType = subscribeType == null ? null : subscribeType.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table node_address_subscribe_record
     *
     * @mbg.generated
     */
    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        NodeAddressSubscribeRecord other = (NodeAddressSubscribeRecord) that;
        return (this.getAddress() == null ? other.getAddress() == null : this.getAddress().equals(other.getAddress()))
            && (this.getEmail() == null ? other.getEmail() == null : this.getEmail().equals(other.getEmail()))
            && (this.getCreateTimestamp() == null ? other.getCreateTimestamp() == null : this.getCreateTimestamp().equals(other.getCreateTimestamp()))
            && (this.getUpdateTimestamp() == null ? other.getUpdateTimestamp() == null : this.getUpdateTimestamp().equals(other.getUpdateTimestamp()))
            && (this.getSubscribeType() == null ? other.getSubscribeType() == null : this.getSubscribeType().equals(other.getSubscribeType()));
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table node_address_subscribe_record
     *
     * @mbg.generated
     */
    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getAddress() == null) ? 0 : getAddress().hashCode());
        result = prime * result + ((getEmail() == null) ? 0 : getEmail().hashCode());
        result = prime * result + ((getCreateTimestamp() == null) ? 0 : getCreateTimestamp().hashCode());
        result = prime * result + ((getUpdateTimestamp() == null) ? 0 : getUpdateTimestamp().hashCode());
        result = prime * result + ((getSubscribeType() == null) ? 0 : getSubscribeType().hashCode());
        return result;
    }
}